With an ongoing spreading of modern communication media, the importance of concepts protecting information signals from unauthorized manipulation and/or revealing a manipulation is increasing.
When the information signals are, for example, digital audio or video signals, so-called watermarks are often employed to provide the data with, for example, copy protection. The watermarks are, for example, “woven” into the information signal such that removing the watermark, for example for eliminating the copy protection, inevitably leaves digital traces which may be detected. In order to prevent reproduction of the data, even in the case of a successful removal of the watermark, it is also necessary to check the data for integrity to recognize a potential manipulation.
Well-known approaches for an integrity check of information signals are based on encrypting the entire data by a cryptographic hash process. The cryptographic hash values are often referred to as a check sum. They are calculated from an input value of unknown length and unambiguously define a certain output value, the so-called hash (such as, for example, a string of 20 bytes). Here, the characteristic feature of the hash function is to determine, for any input value, an unambiguously associated output value from which the input value cannot be derived.
The complete amount of data is at first processed by the hash algorithm, i.e. the hash of the amount of data is formed. For a subsequent integrity check, the amount of data to be tested is again processed completely by the hash algorithm. If this results in the same hash as in the reference pass, it may be assumed that no changes have been made to the dataset.
The requirements to hash functions may basically be expressed in three points:                Every hash value must be present in an equal amount of times, i.e. the probability of hash values for different input values must not differ.        A change of the input value should result in a changed hash value.        The complexity of generating collisions should be very high, i.e. it should be as difficult as possible to find, for a certain input value, a second input value having the same hash value.        
A hash function fulfilling all three requirements is also referred to as a cryptographic hash function. SHA-1, MD4, MD5 and RIPE-MD160 are among the most important hash functions.
The cryptographic hash function SHA-1 processes blocks of a length of 512 bits and thus generates 160-bit hash values. 532-bit variables (chain variables) as well as the so-called compression function play an important role.
At first, the input value is divided into blocks of a length of 512 bits. Subsequently, the compression function takes the five chain variables and a 512-bit block and maps this to the next 532-bit values. The function runs in four rounds, each having 20 identical operations where the individual bits are shifted according to predefined calculating operations. Finally, the content of the five chain variables is output as the hash value. The usage of hash processes for an integrity check is, for example, described in Open Mobile Alliance, OMA DRM Specification V2.0, Draft Version 2.0-Apr. 10, 2004.
It is of disadvantage in the known approaches that, as a standard, a complete dataset, i.e. the entire information signal, is tested, which entails high complexity. Additionally, changes in the dataset cannot be made at a later point, such as, for example, adding one or several watermarks, without destroying the integrity of the dataset, even if only certain dataset components are changed.